package de.tudarmstadt.fgbs.cafe.ui.akabahn;

import java.awt.Color;
import java.awt.Graphics;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import javax.swing.JComponent;

import de.tudarmstadt.fgbs.cafe.structure.Bahnhof;

public class ZWLBahnhof extends JComponent {

    private Bahnhof assocBahnhof;
    private int startX;
    private Map<String, Integer> gleisPosition;
    private int xPerGleis = 10;

    /**
     * 
     */
    private static final long serialVersionUID = 2513482324063998289L;

    public ZWLBahnhof(Bahnhof bhf, int startX, int xPerStationMax) {
	gleisPosition = new HashMap<String, Integer>();
	this.assocBahnhof = bhf;
	this.startX = startX;
	positionGleise(bhf.getGleise(), startX, xPerStationMax);
    }

    private void positionGleise(List<String> gleise, int startX,
	    int xPerStationMax) {
	for (int i = 0; i < gleise.size(); i++) {
	    int currentX = startX + i * this.xPerGleis;
	    gleisPosition.put(gleise.get(i), currentX);
	}
    }

    public int getStartX() {
	return this.startX;
    }

    public int getGleisX(String gleisName) {
	if (gleisPosition.containsKey(gleisName))
	    return gleisPosition.get(gleisName);
	else
	    return startX;
    }

    public Bahnhof getAssocBahnhof() {
	return this.assocBahnhof;
    }

    @Override
    protected void paintComponent(Graphics g) {
	g.setColor(Color.red);
	g.drawLine(100, 100, 200, 200);
    }

}
